Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- IPHONE APP DEVELOPER



  Some Thoughts on Twitter's Availability Problems

As a regular user of Twitter I've felt the waves of frustration wash over me these past couple of weeks as the service has been hit by one outage after another. This led me to start pondering the problem space [especially as it relates to what I'm currently working on at work] and deduce that the service must have some serious architectural flaws which have nothing to do with the reason usually thrown about by non-technical pundits (i.e. Ruby on Rails is to blame). Some of my suspicions ...

   Twitter,Architecture,Availability,Design     2011-08-12 07:39:21

  An Object is not a Hash

Following my article A String is not an Error, I want to bring attention to an issue that similarly applies to JavaScript in general, but has special relevance in the Node.JS environment. The problem boils down to the usage of {} as a data-structure where the keys are supplied by untrusted user input, and the mechanisms that are normally used to assert whether a key exists. Consider the example of a simple blog created with Express. We decide to store blog posts in memory in a {}, indexed ...

   Object,Hash,Node.js,JavaScript     2012-01-19 10:16:10

  Tips for Putting a Price on Your Work

WHEN I first started as a freelance writer, I was eager to sell myself — but not eager to have to discuss money. So I more or less took whatever was offered. Then I read somewhere that no matter what price a new client states, you always say in a polite but firm tone, “I expected more.” The first time I tried it, I was sweating and I doubt my tone was firm — it probably sounded more like pleading — but to my great surprise, it worked. With th...

   Development,Price,Worl,Negotiation     2012-01-29 04:37:17

  Android Tutorial: Creating and Using an SD Card in the Emulator

In a previous post, I mentioned how user-friendly Android is for developers. There’s extensive documentation and information on the architecture, the different components and best practices. However, the documentation has a few blind spots. Many of the tools have little documentation and no usage examples. The information is there, it’s just hidden behind a few layers of Android theory.So I’m going to try and document a few of the basic things that you’ll probabl...

   Android,Emulator,SDCard,Load,Create     2011-04-13 12:08:41

  Reducing Code Nesting

"This guy’s code sucks!" It’s something we’ve all said or thought when we run into code we don’t like. Sometimes it’s because it’s buggy, sometimes it’s because it conforms to a style we don’t like, and sometimes it’s because it just feels wrong. Recently I found myself thinking this, and automatically jumping to the conclusion that the developer who wrote it was a novice. The code had a distinct property that I dislike: lots of ...

   Code nesting,Readability,Maintainability,Reduction     2012-01-02 08:13:46

  Seven Ways to Boost Employee Morale

Do your employees drag themselves into work? Is office laughter a vague memory? Your employees' morale may need a boost.After all, low morale can lead to poor cooperation, low productivity and increased turnover -- and ultimately hinder a business from reaching its goals.Since employee morale can quickly build or break a company's success, effective leaders often keep a close eye on it and enlist simple and creative approaches to strengthen it. Here a few tactics to think about adapting for your...

   Employee,Working, active,Attitute,Passion,Encouragement     2011-10-09 07:37:36

  Go Lacks Ternary Operators. Here Are Some Equivalents

If you were like me, a pure Java developer before writing Go, you must be wondering why Go doesn’t support the ternary operator like return a > 1 ? 0 : 1. Most mainstream languages like C and Java are supportive of ternary operators; languages like Python and Ruby support the simplified if-else one-liner, such as a = 0 if a > 1. However, Go is not among them. And it is not only about adding operators but also a concept of coding in a more convenient way, such as the ?: expression can...

   GOLANG,TERNARY OPERATOR     2022-12-09 19:51:32

  STOP WRITING GOOD CODE; START WRITING GOOD SOFTWARE

Good software trumps elaborate code. And unfortunately, you can’t usually have both. The real world has deadlines and ship dates. It’s a game of pick two:Ship on timeShip with elaborate codeShip with a fantastic productAlmost always, you should pick the first and the last when you’re building software applications for users (if you’re building API’s or open source libraries for other developers, then it’s a different story). Too often I have seen de...

   Good software,Standard,Good code,Deadline,Tradeoff     2011-11-20 06:56:06

  List of freely available programming books

Meta-ListsHow to Design Programs: An Introduction to Computing and Programming25 Free Computer Science EbooksFree Tech BooksMindView IncWikibooks: ProgrammingCheat Sheets (Free)CodePlex List of Free E-BooksBook Training - On Video!Sofware Program Managers Network - Free EBooksEBook Share @ linbai.infoFreeBooksClub.NetTheassayer.orgO'Reilly's Open Books ProjectTechBooksForFree.comGalileo Computing (German)Microsoft Press: Free E-BooksGraphics ProgrammingGPU GemsGPU Gems 2 - ch 8,14...

   Free,eBook,Links,Programming,List     2011-11-14 08:03:34

  Top 10 PHP Best Security Practices for Sys Admins

PHP is widely used for various of web development. However, misconfigured server-side scripting would create all sorts of problem. And here are php security best practices that you should aware when configuring PHP securely. Nowadays most of the web servers are operated under Linux environment (like: Ubuntu, Debian...etc). Hence, in the following article, I am going to use list top 10 ways to enhance PHP Security Best Practices under Linux environment. My sample setup for PHP Security Tips: D...

   PHP,code security,System admin,Advice,Best practice     2012-02-01 00:04:37